#ifndef TEST_H_JM_20130205
#define TEST_H_JM_20130205
/// @file Test.h Sanlona testu s presne urvenym poctom testova a ich stupnami 
/// paralelizacie.

#include "ParallelTestTemplate.h"

namespace jm4bbx {
	
	/**
	 * Tato tireda predstavuje skoro kompletnu sadu testov resp. jeden test 
	 * s roznymi stupnami paralelizacie. Jedine co chyba je implementacia testu, 
	 * ktora sa doda ako sablonovy parameter. Trieda je nakonfigurovana 
	 * pre konkretne stypne paralelizacie, kotre bdue testovat.
	 * 
	 * Testovane stupne paralelizacie su 1 ... n, 99, 100 a 256.
	 **/
	template<template<int N> class T>
	class  Test : public ParallelTestTemplate<9,T> {		
	public:
		Test() {
			//addTest<99>();
			//addTest<100>();
			//addTest<256>();
		}

		std::string runTest(int i) {
			return tests_[i]->getModel();
		}

		size_t size() { return tests_.size(); }		
	};

} // namespace jm4bbx


#endif
